package com.lzy.chat.b_mapper;

import com.lzy.chat.a_entity.Message;
import org.apache.ibatis.annotations.Mapper;

import java.util.Date;
import java.util.List;

@Mapper
public interface MessageMapper {
    /**
     * 插入消息
     *
     * @param message 消息对象
     * @return 影响行数
     */
    Integer insert(Message message);

    /**
     * 查询用户未读消息
     *
     * @param id 用户id
     * @return 未读消息列表
     */
    List<Message> findUserUnreadMessage(Integer id);

    List<Message> getUserUnreadGroupMessage(Integer gid, Date lastRead);

    /**
     * 更新已读消息
     *
     * @param id 消息id
     * @return 影响行数
     */
    Integer updateReadMessage(Integer id);


    /**
     * 获取mid之前的历史消息
     *
     * @param date 起始时间
     * @param uid  用户id
     * @return 消息list
     */
    List<Message> getHistoryMessage(Date date, Integer uid, Integer uid2);

    List<Message> getGroupHistoryMessage(Integer gid, Date date);

}
